package cn.com.db.dao;


import cn.com.db.model.CartItem;
import cn.com.db.model.Store;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

import java.math.BigDecimal;
import java.util.List;

@Component
@Mapper
public interface CartItemDao {

    void addCartItem(CartItem cartItem);

    CartItem getCartItemById(@Param("id")String itemId);

    List<CartItem> getCartItems(@Param("cartId")String cartId);

    List<CartItem> getItemsByIdList(@Param("list")List<String> itemIds);

    CartItem getCartItemByGoodsId(@Param("cartId")String cartId,
                                  @Param("goodsId")String goodsId);

    BigDecimal countCartItemFreight(@Param("items")List<String> items);

    void updateCartItem(CartItem cartItem);

    void delete(@Param("id") String itemId);

    void deleteItems(@Param("list")List<String> items);

    void clearCart(@Param("cartId")String cartId);
}
